package cn.jbolt.ai.app.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;

import java.io.Serializable;
import java.util.Date;

/**
 * AI应用设计表
 */
@TableName("ja_ai_app_design")
public class AiAppDesign implements Serializable {
    private static final long serialVersionUID = 1L;


    @TableId(type = IdType.ASSIGN_ID)
    private Long id;


    @Schema(name = "appId", description = "所属的应用")
    @TableField("app_id")
    private Long appId;

    @Schema(name = "nodes", description = "节点定义")
    @TableField("nodes")
    private String nodes;

    @Schema(name = "edges", description = "关联关系定义")
    @TableField("edges")
    private String edges;




    @Schema(name = "updateTime", description = "更新时间")
    @JsonFormat(locale = "zh", pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;


    //--------以下是非数据库字段
    @Schema(name = "fieldsName", description = "字段名称")
    @TableField(exist = false)
    private String fieldsName;

    @Schema(name = "fieldsValue", description = "字段值")
    @TableField(exist = false)
    private String fieldsValue;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getAppId() {
        return appId;
    }

    public void setAppId(Long appId) {
        this.appId = appId;
    }

    public String getNodes() {
        return nodes;
    }

    public void setNodes(String nodes) {
        this.nodes = nodes;
    }

    public String getEdges() {
        return edges;
    }

    public void setEdges(String edges) {
        this.edges = edges;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getFieldsName() {
        return fieldsName;
    }

    public void setFieldsName(String fieldsName) {
        this.fieldsName = fieldsName;
    }

    public String getFieldsValue() {
        return fieldsValue;
    }

    public void setFieldsValue(String fieldsValue) {
        this.fieldsValue = fieldsValue;
    }
}
